package br.com.mensures.mbean;

import java.util.ArrayList;
import java.util.List;

import javax.faces.bean.ManagedBean;

import br.com.mensures.datamodel.IndicadorDataModel;
import br.com.mensures.vo.IndicadoresVO;

@ManagedBean
public class IndicadoresMBean {

	private final static String[] indicadores;  
    private final static Double[] metricas;
    
    static {  
        indicadores = new String[10];  
        indicadores[0] = "Capa de Revista";  
        indicadores[1] = "Tiragem";  
        indicadores[2] = "Circula��o";  
        indicadores[3] = "Periodicidade";  
        indicadores[4] = "Padrao";  
        indicadores[5] = "Perfil";  
        indicadores[6] = "Audiencia";  
        indicadores[7] = "Foto na Capa";  
        indicadores[8] = "Foto na Ultima P�gina";  
        indicadores[9] = "Foto no Jornal Inteiro";  
  
        metricas = new Double[10];  
        metricas[0] = 1.0;  
        metricas[1] = 1.1;  
        metricas[2] = 1.2;  
        metricas[3] = 1.3;  
        metricas[4] = 1.4;  
        metricas[5] = 1.5;  
        metricas[6] = 1.6;  
        metricas[7] = 1.7;  
        metricas[8] = 1.8;  
        metricas[9] = 1.9;  
    }

  
    private List<IndicadoresVO> listaIndicadores;  
  
    private IndicadoresVO selectedIndicador;  
  
    private IndicadoresVO[] selectedIndicadores;  
  
    private IndicadorDataModel mediumIndicadoresModel;  
  
    public IndicadoresMBean() {  
        listaIndicadores = new ArrayList<IndicadoresVO>();  
          
        populateRandomIndicadores(listaIndicadores, 50);  
  
        mediumIndicadoresModel = new IndicadorDataModel();  
    }  
  
    public IndicadoresVO[] getSelectedIndicadores() {  
        return selectedIndicadores;  
    }  
    public void setSelectedIndicadores(IndicadoresVO[] selectedIndicadores) {  
        this.selectedIndicadores = selectedIndicadores;  
    }  
  
    public IndicadoresVO getSelectedIndicador() {  
        return selectedIndicador;  
    }  
  
    public void setSelectedIndicador(IndicadoresVO selectedIndicador) {  
        this.selectedIndicador = selectedIndicador;  
    }  
  
    private void populateRandomIndicadores(List<IndicadoresVO> list, int size) {  
        for(int i = 0 ; i < size ; i++)  
            list.add(new IndicadoresVO((long) i,getRandomNomeIndicador(),getRandomMetricas(),1));  
    }  
  
    private String getRandomNomeIndicador() {  
        return indicadores[(int) (Math.random() * 10)];  
    }  
  
    private Double getRandomMetricas() {  
        return metricas[(int) (Math.random() * 10)];  
    }  

    public List<IndicadoresVO> getMediumIndicadoresModel() {  
        return listaIndicadores;  
    }
 
}
